In modern-day business, an increasing number of transactions are conducted electronically through online application servers, by means of communication over networks such as, most commonly, the Internet. While traditionally conducted from personal computers and other devices which typically have considerable processing power, transactions are increasingly being conducted from Internet enabled mobile phones and other mobile handheld devices that do not necessarily have the same processing capabilities.
In the remainder of this specification the term “mobile handset” should be interpreted to include any mobile communications device capable of communicating over a communications network, such as a cellular network, and having at least a limited amount of processing power. The term should be interpreted to specifically include all mobile or cellular phones but may also include portable computers such as laptops, handheld personal computers and the like.
A problem with conventional online transactions is, however, the inherent security risk associated with online communication. Unscrupulous operators are constantly developing new techniques to intercept user and transactional information and to use these for defrauding the parties involved. Examples of such security threats include identity theft, Man-In-The-Middle (MITM) attacks, Pharming, Phishing, Over-The-Air SMS/data sniffing, third party infrastructure hijacking, Trojans, key loggers as well as various combinations of these threats.
In an attempt to make online transactions more secure, numerous security techniques have been developed. One such technique, an example of what is known as two factor authentication, utilizes the user's mobile phone as a device decoupled from the transaction to provide an additional layer of security. Because a one-to-one relationship is assumed to exist between a user and his or her mobile phone, for this technology to be used, it is assumed that the phone is always in the user's possession. Short Message Service (SMS) messages are currently the preferred delivery mechanism for security messages and generally take the form of a text message sent by the service provider (for example a banking institution) to the user's mobile phone. The message typically includes a single, unique one-time-pin (OTP) which the user then has to manually enter into the secure environment it wishes to access or prior to conducting a secure transaction, in conjunction with his or her normal login details.
While this technology adds an extra layer of security, it is still susceptible to abuse as it is possible to intercept SMS messages through, for example, techniques such as SIM-card cloning. It also still requires the user to enter an 8-digit (or longer) code from the cell phone onto the website or otherwise of the secure transaction it wishes to perform. Another disadvantage of this technology is the relatively high cost involved for the institution hosting the secure transaction, as it has to send an SMS message through a GSM network provider each time a user needs to be authenticated. Authentication may take place a number of times during any particular session and each such message will normally be billed for individually by the GSM network provider.
In essence, this type of two-factor authentication is not completely “out-of-band” in the true sense of the word. While the OTP may arrive on the user's phone “out-of-band”, the user again has to enter it into and transmit it over the same communications band, thus making it susceptible to interception once more. If the browser or other communication channel being used has been compromised, the transmission of the OTP will likewise have been compromised.
Another major disadvantage of this technology has only become apparent since mobile handsets are increasingly being used as devices for browsing the Internet and for transacting online. A large number of mobile handsets do not allow users to have multiple applications running at the same time. As a result, the user cannot receive an SMS with an OTP while he or she is browsing the Internet on the handset through a web browser application. This necessitate the user to close the browser before reading the SMS and OTP, only to then have to re-launch the browser in order to enter the OTP in the site. Even in cases where it is possible to have multiple active applications at a given time, the switching between applications can be difficult and awkward.
In addition to what has been said above, most security protocols that have been developed require a substantial amount of processing power in order to be viable. One of the most common security measures used in online transaction today is Transport Layer Security (TLS) or its predecessor, Secure Socket Layer (SSL). TLS and SSL are both what is known as cryptographic protocols and are used to encrypt segments of network connections at the application layer to ensure secure end-to-end transit at the transport layer. SSL is, however, problematic for mobile handsets for a variety of reasons, one of which is the fact that handsets generally do not have the processing power to calculate their own private and public cryptographic key pairs that can be used for secure communication. Apart from it potentially being impossible for mobile handsets to request certificates in some cases, the process will in other cases still be complex and tedious. In addition, most mobile handsets simply do not have enough Root Certificates pre-installed on them to enable them to accept any normal sub-set of certificates issued by conventional Certificate Authorities (CAs).
As a result of the above limitations and difficulties with mobile handsets, operators of online application servers, for example banks, typically choose to avoid the complications by drastically limiting the number and extent of online transactions that can be conducted from a user's mobile handset. This greatly inhibits the use of technology as users still have to have access to personal computers in order to use the full host of services offered by most online application servers.